<script>
import store from '@/store'
import { BannerIndexRecommend } from '@/api/teleplay'

import { updateUserInfo } from "@/utils/index";
export default {
  data() {
    return {

    }
  },

  async onLaunch(params) {
    console.log("async onLaunch", params, params?.query?.channel_type);
    if(params?.query?.channel_id){
      if(params?.query?.channel_type){
        store.commit('global/setIsHasChannelType', params?.query?.channel_type)
      } else {
        store.commit('global/setIsHasChannelType', 0)
      }
    }

    //版本更新后提示用户更新
    this.autoUpdate()

    this.GetSeeVideoData()
  },
  async onShow() {
    // 进入小程序更新用户信息
    const userInfo = uni.getStorageSync('userInfo')
    if (JSON.stringify(userInfo) !== '{}') {
      updateUserInfo()
    }
  },
  onHide() {
    // console.log('App Hide')
  },
  methods: {
    async GetSeeVideoData(){
      const res = await BannerIndexRecommend()
      console.log("🚀 ~ GetSeeVideo ~ res:", res)

      this.$store.commit('global/setSeeVideoData', res.data)
    },
    autoUpdate() {
      const updateManager = uni.getUpdateManager() // 小程序版本更新管理器
      updateManager.onCheckForUpdate(res => { // 检测新版本后的回调
        if (res.hasUpdate) { // 如果有新版本提醒并进行强制升级
          uni.showModal({
            content: '新版本已经准备好，是否重启应用？',
            showCancel: false,
            confirmText: '确定',
            success: res => {
              if (res.confirm) {
                updateManager.onUpdateReady(res => { // 新版本下载完成的回调
                  updateManager.applyUpdate() // 强制当前小程序应用上新版本并重启
                })

                updateManager.onUpdateFailed(res => { // 新版本下载失败的回调
                  // 新版本下载失败，提示用户删除后通过冷启动重新打开
                  uni.showModal({
                    content: '下载失败，请删除当前小程序后重新打开',
                    showCancel: false,
                    confirmText: '知道了'
                  })
                })
              }
            },
          })
        }
      })


    }
  }
}
</script>

<style lang="scss">
@import './static/iconfont/iconfont.css';

/* 注意要写在第一行，同时给style标签加入lang="scss"属性 */
@import 'uview-ui/index.scss';
</style>
